package com.maiji.cloud.service;

import com.maiji.cloud.entities.shopingmall.ShopingAddress;
import com.baomidou.mybatisplus.service.IService;
import com.maiji.cloud.entities.shopingmall.ShopingOrderEditLog;
import com.maiji.cloud.request.ReqMetaData;
import com.maiji.cloud.request.shopingmall.ShopingAddressAddReqDto;
import com.maiji.cloud.request.shopingmall.ShopingOrderEditLogReqData;
import com.maiji.cloud.response.BaseDataResDto;
import com.maiji.cloud.response.BaseMetaResDto;
import com.maiji.cloud.response.BaseResDto;
import com.maiji.cloud.response.shopingmall.ShopingAddressResData;
import com.maiji.cloud.response.shopingmall.ShopingOrderResData;
import java.util.List;

public interface ShopingAddressService extends IService<ShopingAddress> {

    ShopingAddressResData findShopingAddressResDataById(String shopingAddressId);

    BaseDataResDto<String> addOrUpdateShopingAddress(ShopingAddressAddReqDto.ShopingAddressAddReqReqData data, String token);

    BaseMetaResDto<List<ShopingAddressResData>> findAllShopingAddress(String token);

    BaseResDto delShopingAddress(String shopingAddressId);

    void calculateFreight(ShopingOrderResData shopingOrderResData, String shopingAddressId,
                          String rfId, String userId, Double presentPayable, Integer weight, Boolean submit);

    BaseResDto editOrder(ShopingOrderEditLogReqData data);

}
